﻿/*********************************************
* 命名空间: DataCode.DatabaseDrives
* 功 能： 数据库模块，用于注册多个不同类型的数据库
* 类 名： DataBaseModule
* 作 者:  东腾
* 时 间： 2018/2/24 16:16:10 
**********************************************
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using Abp.Dependency;
using Abp.Domain.Repositories;
using Abp.Modules;
using Abp.MongoDb.Repositories;
using Castle.MicroKernel.Registration;
using DataCode.DatabaseDrives.PostgreSqlProvide;
using DataCode.MongoDBProvide;

namespace DataCode.DatabaseDrives
{
    [DependsOn(typeof(PostgreSqlModule))]
    [DependsOn(typeof(MongoDBModule))]
    public class DataBaseModule:AbpModule
    {
        public override void Initialize()
        {
            IocManager.IocContainer.Register(
                Component.For(typeof(IRepository<,>), typeof(MongoDbRepositoryBase<,>)).LifestyleTransient()
            );
            IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
        }
    }
}
